#pragma once

class CSettings final :
	public IEngMod
{
public:
	CSettings();
	~CSettings();

	const glm::vec2&	GetResolutionf() const;
	const glm::ivec2&	GetResolutioni() const;
	bool				GetFullscreenEnabled() const;
	bool				GetVSyncEnabled() const;
	bool				GetSplashscreenEnabled() const;
	int					GetMaxThreadsCount() const;

private:
	void LoadConfig(const std::string& path);

	glm::vec2			m_resolutionf;
	glm::ivec2			m_resolutioni;
	int					m_maxThreads;
	bool				m_fullscreenEnabled;
	bool				m_splashscreenEnabled;
	bool				m_vsyncEnabled;
};

extern CSettings* g_Settings;
